#ifndef CAPTURETHREAD_H
#define CAPTURETHREAD_H

#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <inttypes.h>
#include <dc1394/dc1394.h>

// qt headers
#include <QWidget>
#include <QtCore>
#include <QDebug>

// opencv headers
#include <opencv/cv.h>
#include <opencv2/opencv.hpp>
#include <opencv/highgui.h>
#include <opencv/cv.h>
#include <opencv/ml.h>
#include <opencv/cxcore.h>


class CaptureThread: public QThread
{
    Q_OBJECT

public:
    CaptureThread(QObject *parent =0);


    dc1394camera_t *camera;
    dc1394error_t err;
    dc1394video_frame_t *framedc;
    dc1394_t *d;
    dc1394camera_list_t *list;

    IplImage *cvFrame;
    int frameCount;

    void close();
public slots:
    void run();
};


#endif // CAPTURETHREAD_H
